<?php
require_once '../../Banco/Conexao.php';
class DaoPromocao {
    
    public function buscarProdutos(){
        $conexao = new Conexao();    
        $conexao->conecta();
        try{
            $query = "SELECT * FROM produto";
            $resultado = mysql_query($query);
            while($linha = mysql_fetch_array($resultado)){
                $produto->setNome($linha['prod_nome']);
                $produto->setDescricao($linha['prod_descricao']);
                $produto->setValor($linha['prod_valor']);
                $produto->setEditora($linha['edi_id']);
                
            }
        }catch(Exception $e){
            
        }
        $conexao->desconnecta();
    }
    
    public function buscaPromocaoProduto($id){
        $conexao = new Conexao();    
        $conexao->conecta();
        try{
            $query = "SELECT * FROM produto_promocao WHERE prod_id = $id";
            $resultado = mysql_query($query);            
            if(mysql_affected_rows() <> 0){
                $promId = mysql_result($resultado,0, "prom_id");
                $query2 = "SELECT * FROM promocao WHERE prom_id = $promId";
                $resultadoDesconto = mysql_query($query2);
                while($linha = mysql_fetch_array($resultadoDesconto)){
                    $promocao = new Promocao();
                    $promocao->setTipoDesconto($linha['prom_tipo_desconto']);
                    $promocao->setDataInicio($linha['prom_data_inicio']);
                    $promocao->setDataFinal($linha['prom_data_fim']);
                    $promocao->setDesconto($linha['prom_desconto']);
                    return $promocao;                    
                }
            }else{
                return 0;
            }            
                        
        }catch(Exception $e){
            
        }
        $conexao->desconnecta();
    }


    public function cadastrar($promocao, $lista){
        $conexao = new Conexao();    
        $conexao->conecta();
        try{
            $nome = $promocao->getNome();
            $dataInicio = $promocao->getDataInicio();
            $dataFinal = $promocao->getDataFinal();
            $desconto = $promocao->getDesconto();
            $tipoDesconto = $promocao->getTipoDesconto();
            
            $query = "INSERT INTO promocao(prom_nome, prom_data_inicio, prom_data_fim, prom_tipo_desconto, prom_desconto)
                VALUES('$nome', '$dataInicio', '$dataFinal', '$tipoDesconto', $desconto)";
            mysql_query($query);
            print mysql_error();
            
            $idNovo = mysql_result(mysql_query("SELECT MAX(prom_id) FROM promocao"), 0);
            foreach ($lista as $produto){
                $query2 = "INSERT INTO produto_promocao VALUES ($idNovo, $produto)";
                mysql_query($query2) or die("Erro ao cadastra produto<->promocao");
            }
            
        }catch(Exception $e){
            
        }
        $conexao->desconnecta();
    }
    
    public function buscar(){
        try{
            $conexao = new Conexao();    
            $conexao->conecta();
            $lista = array();
            if(func_num_args() == 1){
                if(is_int(func_get_arg(0))){
                    $query = "SELECT * FROM promocao WHERE prom_id =" . func_get_arg(0);
                }elseif(is_string(func_get_arg(0))){
                    $query = "SELECT * FROM promocao WHERE prom_nome ='" . func_get_arg(0)."'";
                }
            }elseif (func_num_args() == 0) {
                $query = "SELECT * FROM promocao";
            }
            $consulta = mysql_query($query) or die('Erro na consulta');
            while ($linha = mysql_fetch_array($consulta)){
                $promocao = new Promocao();
                $promocao->setId($linha['prom_id']);
                $promocao->setNome($linha['prom_nome']);
                $promocao->setDataInicio($linha['prom_data_inicio']);
                $promocao->setDataFinal($linha['prom_data_fim']);
                $promocao->setTipoDesconto($linha['prom_tipo_desconto']);
                $promocao->setDesconto($linha['prom_desconto']);
                array_push($lista, $promocao);
            }
            return $lista;
        }catch(Exception $e){
            echo $e;
        }
        $conexao->desconnecta();
    }
    
}

?>
